home *** CD-ROM | disk | FTP | other *** search
- #!/sbin/runscript
- # Copyright 1999-2006 Gentoo Foundation
- # Distributed under the terms of the GNU General Public License v2
- # $Header: /var/cvsroot/gentoo-x86/net-misc/openssh/files/sshd.rc6,v 1.19 2006/02/28 00:09:52 vapier Exp $
-
- opts="reload"
-
- depend() {
- use logger dns
- need net
- }
-
- SSHD_CONFDIR=${SSHD_CONFDIR:-/etc/ssh}
-
- checkconfig() {
- if [[ ! -d /var/empty ]] ; then
- mkdir -p /var/empty || return 1
- fi
-
- if [[ ! -e ${SSHD_CONFDIR}/sshd_config ]] ; then
- eerror "You need an ${SSHD_CONFDIR}/sshd_config file to run sshd"
- eerror "There is a sample file in /usr/share/doc/openssh"
- return 1
- fi
-
- gen_keys || return 1
-
- /usr/sbin/sshd -t ${myopts} || return 1
- }
-
- gen_keys() {
- if [[ ! -e ${SSHD_CONFDIR}/ssh_host_key ]] ; then
- einfo "Generating Hostkey..."
- /usr/bin/ssh-keygen -t rsa1 -b 1024 -f ${SSHD_CONFDIR}/ssh_host_key -N '' || return 1
- fi
- if [[ ! -e ${SSHD_CONFDIR}/ssh_host_dsa_key ]] ; then
- einfo "Generating DSA-Hostkey..."
- /usr/bin/ssh-keygen -d -f ${SSHD_CONFDIR}/ssh_host_dsa_key -N '' || return 1
- fi
- if [[ ! -e ${SSHD_CONFDIR}/ssh_host_rsa_key ]] ; then
- einfo "Generating RSA-Hostkey..."
- /usr/bin/ssh-keygen -t rsa -f ${SSHD_CONFDIR}/ssh_host_rsa_key -N '' || return 1
- fi
- return 0
- }
-
- start() {
- local myopts=""
- [[ ${SVCNAME} != "sshd" ]] && myopts="${myopts} -o PidFile=/var/run/${SVCNAME}.pid"
- [[ ${SSHD_CONFDIR} != "/etc/ssh" ]] && myopts="${myopts} -f ${SSHD_CONFDIR}/sshd_config"
-
- checkconfig || return 1
- ebegin "Starting ${SVCNAME}"
- /usr/sbin/sshd ${myopts} ${SSHD_OPTS}
- eend $?
- }
-
- stop() {
- ebegin "Stopping ${SVCNAME}"
- start-stop-daemon --stop --quiet --pidfile /var/run/${SVCNAME}.pid
- eend $?
- }
-
- reload() {
- ebegin "Reloading ${SVCNAME}"
- start-stop-daemon --stop --quiet --pidfile /var/run/${SVCNAME}.pid \
- --signal HUP
- eend $?
- }
-